草庐IT

java - JList 复制选择

全部标签

javascript - 如何在不更改 DOM 的情况下计算文本选择的高度

我正在使用Range来操作选定的文本。我想计算从开始选择文本到完成选择文本的高度。我已经尝试跨度到所选范围的开始和结束,我可以准确地计算出它的高度,但它会改变DOM并阻止我进行一些其他范围操作,例如突出显示先前选择的文本。我也尝试收集mosedown和mosueup位置的位置,但我需要从所选文本的顶部到释放选择的文本底部的准确高度,但情况并非总是如此。所以我想知道是否有一种方法可以在不更改DOM的情况下计算文本选择的高度? 最佳答案 这取决于您需要处理哪些浏览器。这是一个可以在IE>=4和支持Range中的getClientRect

javascript - 当 JavaScript 值是通过引用而非值复制时,是否有任何经验法则?

即使作为经验丰富的JS开发人员,我也经常对对象的浅拷贝和深拷贝感到惊讶。对于主要对象类型,当JavaScript值是按引用而不是按值复制时,是否有任何经验法则?例如,我知道字符串值总是按值而不是引用进行复制。 最佳答案 在JavaScript中,所有对象都是“通过引用”存储和传递的。vara={v:'a'},b={v:'b'};a=b;b.v='c';a和b将引用同一个对象;a.v=='c'和b.v=='c'。原始数据类型(string、number、boolean、null和undefined)是不可变的;它们按值传递。vara=

javascript - 防止从文本区域复制文本的所有方法的跨浏览器方法?

我正在开发一款在线打字软件。在打字软件中,一切顺利,但我遇到了不诚实的用户的问题,他们可能会将文本键入文本区域,复制它,然后重新加载页面(因此重置计时器)并直接粘贴它。因此,当javascript检测到按下ctrl/cmd按钮以及C键时,我正在考虑使用类似evt.preventDefault();的方法。但后来我意识到用户总是可以转到菜单栏以按Edit->Copy。所以我想知道,是否有跨浏览器的方法来禁用这两种复制方法? 最佳答案 您可以尝试使用以下jQuery代码:$('input[type=text],textarea').bi

javascript - 在 Chrome 扩展程序中将文本复制到剪贴板

我正在编写GoogleChrome扩展程序,我想在内容脚本中复制剪贴板中的一些文本。我尝试选择它,然后选择document.execCommand('copy')-它不起作用。我不想要Flash,因为它不是实现它的简单而优雅的方法。我尝试了后台页面和-它不起作用。在Chrome扩展程序中是否有任何工作、优雅和简单的方法将文本复制到剪贴板?它还可以使用jQuery。问候 最佳答案 这里有一些可以复制/粘贴的工作(Coffeescript)代码:https://github.com/philc/vimium/blob/master/li

javascript - 如何使用 graph dracula 在多个节点上进行矩形选择?

我正在研究一些图形可视化,我正在使用JavaScript库graphDracula.现在,有了这个库,当我想移动一个节点时,我必须单击我想移动的节点并将它移动到所需的位置(通过拖放)。但是,我想要做的是选择更多节点并移动所有节点。我不知道该怎么做,因为我在JavaScript编程方面经验不足。所以,我的问题是:如何使用矩形选择和移动来选择多个节点他们?如何选择多个节点,例如,Ctrl+左键单击并选择更多节点然后移动它们? 最佳答案 从表面上看,几乎所有Dracula的图形渲染都是由RaphaelJS管理的。.在这种情况下,事情对您来

javascript - 带有选择器的 Node.js 和 Cheerio 解析表

我正在尝试使用Node.js和Cheerio解析HTML表格并得到了一些结果,但不幸的是我得到了太多数据并且我不确定如何进一步解析它以仅获取我需要的数据.这是我目前使用的一小段代码..varrequest=require("request");varcheerio=require("cheerio");request('http://www.myURL.com',function(error,response,body){var$=cheerio.load(body);$('td').each(function(){console.log($(this).text());});});使

javascript - 过滤掉选择选项后,Angular 模型无法更新

试图找出当绑定(bind)的选定选项不再存在时模型不更新的原因。我希望模型的属性更新为未定义/空/空字符串。情况:一个select使用过滤器驱动另一个select。选择完成后,转到原来的select并选择另一个选项。过滤器将按预期删除第二个select选项,但第二个select上的模型属性将保持不变。问题:当您通过模型时,它会填充错误/先前的值。此外,使用Angular验证时,select是必需的...表单在技术上是“有效的”,因为模型具有该属性的值(先前的值)。HTML:AllCategoriesAllSubCategories型号:app.controller('MainCtrl'

javascript - 通过使用不同的选择器选择一个元素来赋予一个元素多个事件处理程序

我有几个“事件”类,涵盖了我的一些svg元素。我正在为每个类分配一个用于mouseover和mouseout的事件处理程序,如果一个元素有多个类,我希望两个处理程序都触发。我该怎么做呢?似乎当我这样做的时候d3.selectAll(".a-class").on("mouseover",function(){//doA}).etc();d3.selectAll(".another-class").on("mouseover",function(){//doB}).etc();然后,当我将鼠标悬停在具有两个类的元素上时,只有B(第二个处理程序)触发,显然是因为它覆盖了第一个。有没有一种方法

javascript - Jquery 按名称选择按钮

我不明白如何使用Jquery按名称选择按钮“g_list”。Title:Generatelist我写了这段Jquery代码,但它不起作用:$("input[name='g_list']").click(function(){alert("ready!");}); 最佳答案 在您的代码中,input[name='g_list']将搜索具有该名称的输入元素,而您需要搜索按钮,因此请使用button[name='g_list']为此。$("button[name='g_list']").click(function(){//--^----

javascript - 选择焦点上文本输入的所有内容在 Microsoft Edge 中不起作用

在选择输入字段中的所有文本时,我似乎遇到了特定于Edge的问题。我正在使用angular的ng-focus调用Controller中的函数来选择字段中的所有文本。functionselectAllTextOnFocus($event){$event.target.select();}这在除MicrosoftEdge之外的所有浏览器中都可以正常工作,它不会选择输入字段中的文本。我还尝试了另一种jQuery解决方案,除了输入字段的第一个选择外,它仍然有效。之后它会按预期工作并选择所有文本。$('input').on('focus',function(e){$(this).one('mous